package com.neu.credit.creditscore.entity.books;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@Schema(name = "Books", description = "图书信息表")
public class Books {

    @Schema(description = "图书ID，自增主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @Schema(description = "图书名称")
    private String bookName;

    @Schema(description = "作者")
    private String author;

    @Schema(description = "出版社")
    private String publisher;

    @Schema(description = "出版年份")
    private Integer publicationYear;

    @Schema(description = "分类ID")
    private Integer categoryId;

    @Schema(description = "图书简介")
    private String bookIntroduction;

    @Schema(description = "图书封面图片URL")
    private String image;

    @Schema(description = "库存数量")
    private Integer stock;

    @Schema(description = "已借出数量")
    private Integer borrowedNumber;

    @Schema(description = "图书价值（元）")
    private BigDecimal price;

    @Schema(description = "预期价值（元）")
    private BigDecimal overdueFee;

    @Schema(description = "创建时间")
    private LocalDateTime createdAt;

    @Schema(description = "更新时间")
    private LocalDateTime updatedAt;
}